package com.gosophia.oa.test.functional;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.gosophia.oa.test.CustomSeleneseTestCase;



public class FTLogManagement extends CustomSeleneseTestCase {
	
	@Before
	public void setUp() throws Exception {
		super.setUp("http://localhost:8080/");
	}
	
	@After
	public void tearDown() throws Exception {
		if (selenium != null)
			selenium.close();
		super.tearDown();
	}
	
	@Test
	public void testListPage() throws Exception {
		// 登录
		selenium.open("/OA/");
		selenium.type("j_username", "admin");
		selenium.type("j_password", "admin");
		selenium.click("loginBtn");
		selenium.waitForPageToLoad("10000");

		// 进入列表页面
		selenium.click("link=日志管理");
		selenium.waitForPageToLoad("10000");
		assertPageTitle("北京市电子行政监察平台-系统操作日志列表", onPage("日志列表页面"));

		// 等待列表刷新完成
		waitForAppearanceOfElement("//div[@id='dataTable']/table", 10000);

		// 验证页面元素
		String[] listPageElementTexts = {
				"操作时间",
				"账号",
				"姓名",
				"操作内容",
				"来源",
				"首页","尾页"
				};
		verifyPresenceOfTexts(listPageElementTexts, onPage("日志列表页面"));
	}
	
	@Test
	public void testDetailsPage() throws Exception {
		selenium.open("/OA/");
		selenium.type("j_username", "admin");
		selenium.type("j_password", "admin");
		selenium.click("loginBtn");
		selenium.waitForPageToLoad("10000");

		// 进入列表页面
		selenium.click("link=日志管理");
		selenium.waitForPageToLoad("10000");
		// 等待列表刷新完成
		waitForAppearanceOfElement("//div[@id='dataTable']/table", 10000);

		//进入详细页面
		selenium.click("//div[@id='dataTable']//link");
		selenium.waitForPopUp("", "10000");
		selenium.selectPopUp("");
		assertPageTitle("北京市电子行政监察平台-系统操作日志详细", onPage("日志详细页面"));

		// 验证页面元素
		String[] detailsPageElementTexts = {
				"日志详细信息",
				"操作时间",
				"账号名",
				"姓名",
				"来源",
				"操作内容",
				"相关信息"
				};
		verifyPresenceOfTexts(detailsPageElementTexts, onPage("日志详细页面"));
	}

}
